@import './variable';

.luna-console {
  background: var(--background);
}

@mixin luna-console-highlight {
  .luna-console-key {
    color: var(--var-color);
  }
  .luna-console-number {
    color: var(--number-color);
  }
  .luna-console-null {
    color: var(--operator-color);
  }
  .luna-console-string {
    color: var(--string-color);
  }
  .luna-console-boolean {
    color: var(--keyword-color);
  }
  .luna-console-special {
    color: var(--operator-color);
  }
  .luna-console-keyword {
    color: var(--keyword-color);
  }
  .luna-console-operator {
    color: var(--operator-color);
  }
  .luna-console-comment {
    color: var(--comment-color);
  }
}

.luna-console-header {
  color: var(--link-color);
  border-bottom-color: var(--border);
}

.luna-console-nesting-level {
  border-right-color: var(--border);
  &::before {
    border-bottom-color: var(--border);
  }
}

.luna-console-log-item {
  border-bottom-color: var(--border);
  color: var(--foreground);
  a {
    color: var(--link-color) !important;
  }
  .luna-console-icon-container {
    .luna-console-icon {
      color: var(--foreground);
    }
    .luna-console-icon-error {
      color: #ef3842;
    }
    .luna-console-icon-warn {
      color: #e8a400;
    }
  }
  .luna-console-count {
    background: var(--text-color);
  }
  &.luna-console-warn {
    color: var(--console-warn-foreground);
    background: var(--console-warn-background);
    border-color: var(--console-warn-border);
  }
  &.luna-console-error {
    background: var(--console-error-background);
    color: var(--console-error-foreground);
    border-color: var(--console-error-border);
    .luna-console-count {
      background: var(--console-error-foreground);
    }
  }
  &.luna-console-table {
    table {
      color: var(--foreground);
      th {
        background: var(--darker-background);
      }
      th,
      td {
        border-color: var(--border);
      }
      tr:nth-child(even) {
        background: var(--contrast);
      }
    }
  }
  .luna-console-code {
    @include luna-console-highlight();
  }
}

.luna-console-abstract {
  @include luna-console-highlight();
}

.luna-object-viewer {
  color: var(--primary);
  font-size: 12px !important;
  & > li {
    padding: $padding 0 !important;
  }
}
.luna-object-viewer-null {
  color: var(--operator-color);
}
.luna-object-viewer-string,
.luna-object-viewer-regexp {
  color: var(--string-color);
}
.luna-object-viewer-number {
  color: var(--number-color);
}
.luna-object-viewer-boolean {
  color: var(--keyword-color);
}
.luna-object-viewer-special {
  color: var(--operator-color);
}
.luna-object-viewer-key,
.luna-object-viewer-key-lighter {
  color: var(--var-color);
}
.luna-object-viewer-expanded:before {
  border-color: transparent;
  border-top-color: var(--foreground);
}
.luna-object-viewer-collapsed:before {
  border-top-color: transparent;
  border-left-color: var(--foreground);
}

.luna-notification {
  pointer-events: none !important;
  padding: $padding;
  z-index: 1000;
}

.luna-notification-item {
  z-index: 500;
  color: var(--foreground);
  background: var(--background);
  box-shadow: none;
  padding: 5px 10px;
  border: 1px solid var(--border);
}

.luna-notification-upper {
  margin-bottom: 10px;
}

.luna-notification-lower {
  margin-top: 10px;
}
